package com.china08.yxyapi.service.manage.tec.teaching.homework;

import java.text.ParseException;
import java.util.List;
import java.util.Map;

import com.china08.yxyapi.api.manage.tec.teaching.homework.workassign.WorkAssignQuesCrtController.ReqModel;
import com.china08.yxyapi.api.manage.tec.teaching.homework.workassign.WorkAssignQuesCrtV2Controller.ReqModelV2;
import com.china08.yxyapi.api.manage.tec.teaching.homework.workassign.WorkAssignQuesPreviewController.KnowModel;
import com.china08.yxyapi.api.manage.tec.teaching.homework.workassign.WorkAssignQuesPreviewController.QuesReqModel;
import com.china08.yxyapi.entity.es.ElasticYxyYxyQuesResource;
import com.china08.yxyapi.entity.mg.homework.HomeworkTask;

public interface WorkAssignService {

    /** 发布作业 */
    void sendHomeWork(ReqModel reqModel, String schoolId, String userId, String userNick) throws ParseException;

    /** 发布作业 第二版 */
    HomeworkTask sendHomeWorkV2(ReqModelV2 reqModel, String schoolId, String userId, String userNick)
            throws ParseException;

    /** 查询试题下的所有知识点ids */
    List<Integer> findKnowIdList(List<ElasticYxyYxyQuesResource> quesList);

    /** 查询试题下的所有知识点ids */
    List<Integer> findKnowIdList2(List<QuesReqModel> quesModeList);

    /** 查询知识点统计 */
    List<KnowModel> findKnowModelList(List<ElasticYxyYxyQuesResource> quesList);

    /** 查询知识点统计 */
    List<KnowModel> findKnowModelList2(List<QuesReqModel> quesList);

    /** 查询试题的：容易，中等，困难的数量 */
    Map<String, Integer> findDifficultStatic(List<ElasticYxyYxyQuesResource> quesList);

}
